package com.vcredit.creditcat.api;

import com.vcredit.creditcat.dto.foreignTradeCompliance.ApplyResponse;
import com.vcredit.creditcat.dto.foreignTradeCompliance.QueryResponse;
import com.vcredit.creditcat.model.CreditAssure;


public interface IForeignTradeComplianceManager {
	/**
	 * 机构版征信 合规外贸征信申请接口
	 * 
	 * @param cust
	 * @return
	 * @throws Exception
	 */
	void apply(CreditAssure obj) throws Exception;
	/**
	 * 机构版征信 合规查询接口
	 * 
	 * @param CreditAssure
	 * @return
	 * @throws Exception
	 */
	QueryResponse query(CreditAssure obj) throws Exception;
	
	/***
	 * 获取征信结果
	 * @param state
	 * @param ca
	 * @throws Exception
	 */
	void getResult(String state, CreditAssure ca) throws Exception;
	
	/***
	 * 提交征信请求
	 * @param ca
	 * @throws Exception
	 */
	void assureSubmit(CreditAssure ca) throws Exception;
	
	/***
	 * 获取征信结果
	 * @param custIdno
	 *  @throws Exception
	 */	 
	void toGetResult(CreditAssure ca) throws Exception;
	
	void signatureImgUpload(String signPhotoData,Long productId, Long lastProccessId) throws Exception;
	
	void creditAuth(Long lastProccessId)throws Exception;
	
	void creditSubmit(CreditAssure ca) throws Exception;
	
	void preAudit(CreditAssure ca) throws Exception;
	
	
}
